package com.cqupt.sendMes.utils;


@SuppressWarnings("all")
public class ThreadLocalUtil {

    //提供一个常量THREAD_LOCAL，用来维护一个全局唯一的ThreadLocal对象
    private static final ThreadLocal THREAD_LOCAL = new ThreadLocal();

    //根据键获取值
    public static <T> T get(){
        //调用ThreadLocal对象的get()方法，把得到的数据返回
        //强制类型转换
        return (T) THREAD_LOCAL.get();
    }

    //存储键值对
    public static void set(Object value){
        //调用ThreadLocal的set方法把值存进去
        THREAD_LOCAL.set(value);
    }

    //清除ThreadLocal，防止内存泄漏
    //ThreadLocal对象是全局唯一的，生命周期特别长，如果里面的数据一直不清除，有可能造成内存泄漏
    public static void remove(){
        THREAD_LOCAL.remove();
    }
}
